package com.sc.nft.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sc.nft.entity.ShareTheIncomeRecord;
import com.sc.nft.entity.UserCityServerCentreExtraAward;
import com.sc.nft.entity.dto.AddUserCityServerCentreExtraAwardDTO;
import com.sc.nft.entity.dto.SaveUserCityServerCentreExtraAwardDTO;
import com.sc.nft.entity.dto.UserCityServerCentreExtraAwardPageListDTO;
import com.sc.nft.entity.vo.UserCityServerCentreExtraAwardPageListVO;

import java.util.List;

public interface UserCityServerCentreExtraAwardService {

    /**
     * 根据用户id获取用户当前的市场配置
     *
     * @param userId
     * @return
     */
    UserCityServerCentreExtraAward getByUserIdAndSumGtZero(Long userId);

    /**
     * 获取市场补贴配置列表
     *
     * @param userCityServerCentreExtraAwardPageListDTO
     * @return
     */
    Page<UserCityServerCentreExtraAwardPageListVO> getPageList(UserCityServerCentreExtraAwardPageListDTO userCityServerCentreExtraAwardPageListDTO);

    /**
     * 指定数据sum次数-1
     *
     * @param id
     */
    void saveSumSubtractOne(Long id);

    /**
     * 删除某条数据
     *
     * @param id
     */
    void deleteById(Long id);

    /**
     * 新增
     *
     * @param addUserCityServerCentreExtraAwardDTO
     */
    void add(AddUserCityServerCentreExtraAwardDTO addUserCityServerCentreExtraAwardDTO);

    /**
     * 修改
     *
     * @param saveUserCityServerCentreExtraAwardDTO
     */
    void updateById(List<SaveUserCityServerCentreExtraAwardDTO> saveUserCityServerCentreExtraAwardDTO);



}
